import service from "../service.js";
import contentType from "@/common/config/content-type";

/** 公共前缀地址 */
const baseUrl = "/baseCapitalWarehouse/";

/**
 * 新增资金仓库信息
 * @param {*} parameter 请求参数
 * @returns
 */
const insert = (parameter) => {
    const config = {
        type: contentType.Json,
        loadon: true,
    };
    return service.post(baseUrl + "insert", parameter, config);
};

/**
 * 获取所有简称
 * @heardUrl 前缀
 * @param {*} parameter 请求参数
 * @returns
 */
const getSimpleNameList = (heardUrl,parameter) => {
    const config = {
      type: contentType.Form,
    };
    return service.get(heardUrl + "getSimpleNameList", parameter, config);
  };

/**
 * 分页查询资金仓库信息
 * @param {*} parameter 请求参数
 * @param {*} pagination 分页参数
 * @returns
 */
const selectPage = (parameter, pagination) => {
    const config = {
        type: contentType.Json,
        loadon: true,
        params: { ...pagination }
    };
    return service.post(baseUrl + "selectPage", parameter, config);
};

/**
 * 修改资金仓库信息
 * @param {*} parameter 请求参数
 * @returns
 */
const update = (parameter) => {
    const config = {
        type: contentType.Json,
        loadon: true,
    };
    return service.put(baseUrl + "update", parameter, config);
};

/**
 * 获取仓储费列表
 * @param {*} parameter 请求参数
 * @returns
 */
const getStorageChargeList = (parameter, pagination) => {
    const config = {
        type: contentType.Json,
        loadon: true,
        params: { ...pagination }
    };
    return service.post("/baseCapitalWarehouseCostRule/selectPage", parameter, config);
};

/**
 * 仓储费列表新增
 * @param {*} parameter 请求参数
 * @returns
 */
const addStorageChargeList = (parameter) => {
    const config = {
        type: contentType.Json,
        loadon: true,
    };
    return service.post("/baseCapitalWarehouseCostRule/insert", parameter, config);
};

/**
 * 仓储费列表新增
 * @param {*} parameter 请求参数
 * @returns
 */
const changeStorageChargeList = (parameter) => {
    const config = {
        type: contentType.Json,
        loadon: true,
    };
    return service.put("/baseCapitalWarehouseCostRule/update", parameter, config);
};

/**
 * 通过仓库id获取名称
 * @param {*} warehouseId 请求参数
 * @returns
 */
const getRelatedList = (warehouseId) => {
    const config = {
        type: contentType.Form,
    };
    return service.get(baseUrl + "selectNameById/" + warehouseId, config);
};

/**
 * 通过仓库id获取名称
 * @param {*} id 请求参数
 * @returns
 */
const selectById = (id) => {
    const config = {
        type: contentType.Form,
        params: {
            id
        }
    };
    return service.get(baseUrl + "selectById", config);
};

/** 基础信息-资金仓库信息 */
export default {
    selectPage,
    update,
    insert,
    getSimpleNameList,
    getStorageChargeList,
    addStorageChargeList,
    changeStorageChargeList,
    getRelatedList,
    selectById
};
